package shujia.day05;

/*
    使用继承的注意事项：
        1、不要有一点相同的部分就使用继承
            class A{
                fun1();
                fun2();
                fun3();
            }

            class B{
                fun2();
                fun5();
                fun6();
            }

           什么时候使用继承呢？两个类之间满足英语语法上的is a关系就可以了。

        2、子类无法继承父类中的私有成员【私有的成员变量或私有的成员方法】
        3、构造方法无法继承
        4、子类继承父类之后，子类中可以编写自己特有的功能和属性
        5、一个类同一时刻只能继承一个类，不允许一次继承多个类，但是可以多重继承，形成继承体系
 */



class Fu {
    int a = 10;
    static int b = 20;
    private int c = 30;

//    Fu(){
//
//    }

    public void show1(){
        System.out.println("这是父类中的成员方法show1");
    }

    public static void show2(){
        System.out.println("这是父类中的成员方法show2");
    }
    private void show3(){
        System.out.println("这是父亲私有的成员方法show3");
    }
}

class Zi extends Fu {
    //int a = 10;
    //static int b = 20;
    int d = 100;

//    public void show1(){
//        System.out.println("这是父类中的成员方法show1");
//    }
//
//    public static void show2(){
//        System.out.println("这是父类中的成员方法show2");
//    }

//    Fu(){
//
//    }
    public void fun1() {
        System.out.println(a);
        System.out.println(b);
        show1();
        show2();
//        show3();
//        System.out.println(c);
    }
}

public class ExtendsDemo1 {
    public static void main(String[] args) {
        Zi zi = new Zi();
        zi.fun1();

//        zi.show1();
//        Zi.show2();
    }
}
